<!DOCTYPE html>
<html class="x-admin-sm">

<head>
    <meta charset="UTF-8">
    <title>宿舍管理系统</title>
    <meta name="renderer" content="webkit">
    <meta name="csrf-token" content="{{ csrf_token()}}"/>
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="viewport"
          content="width=device-width,user-scalable=yes, minimum-scale=0.4, initial-scale=0.8,target-densitydpi=low-dpi"/>

    <link rel="stylesheet" href="{{asset('css/font.css')}}">
    <link rel="stylesheet" href="{{asset('css/xadmin.css')}}">
    <script type="text/javascript" src="{{asset('lib/layui/layui.js')}}" charset="utf-8"></script>
    <script type="text/javascript" src="{{asset('js/xadmin.js')}}"></script>
    <style>
        .hide-leave-date{
            display: none;
        }
    </style>

    <!-- 让IE8/9支持媒体查询，从而兼容栅格 -->
    <!--[if lt IE 9]>
    <script src="https://cdn.staticfile.org/html5shiv/r29/html5.min.js"></script>
    <script src="https://cdn.staticfile.org/respond.js/1.4.2/respond.min.js"></script>
    <![endif]-->
</head>
<body>
<div class="layui-fluid">
    <div class="layui-row">
        <form class="layui-form">
            {{csrf_field()}}
            <input type="hidden" name="id" value="{{$staff->id}}">
            <div class="layui-form-item">
                <label for="name" class="layui-form-label">
                    <span class="x-red">*</span>姓名
                </label>
                <div class="layui-input-inline">
                    <input type="text" id="name" name="name" required="" lay-verify="required" value="{{$staff->name}}"
                           autocomplete="off" class="layui-input">
                </div>
            </div>
            <div class="layui-form-item">
                <label for="id_card" class="layui-form-label">
                    <span class="x-red">*</span>身份证号
                </label>
                <div class="layui-input-inline">
                    <input type="text" id="id_card" name="id_card" required="" lay-verify="identity" value="{{$staff->id_card}}" onblur="GetAge(this)"
                           autocomplete="off" class="layui-input">
                </div>
            </div>
            <div class="layui-form-item">
                <label for="age" class="layui-form-label">
                    年龄
                </label>
                <div class="layui-input-inline">
                    <input type="text" id="age" name="age" required="" lay-verify="number" value="{{$staff->age}}"
                           autocomplete="off" class="layui-input">
                </div>
            </div>
            <div class="layui-form-item">
                <label for="card_num" class="layui-form-label">
                    <span class="x-red">*</span>工号
                </label>
                <div class="layui-input-inline">
                    <input type="text" id="card_num" name="card_num" required="" value="{{$staff->card_num}}"
                           autocomplete="off" class="layui-input">
                </div>
            </div>
            <div class="layui-form-item">
                <label for="staff_position_id" class="layui-form-label">职务</label>
                <div class="layui-input-block">
                    <select name="staff_position_id">
                        <option value="" {{$staff->staff_position_id?'':'selected'}}>无</option>
                        @foreach($staffPositions as $k=>$v)
                            <option value="{{$k}}" {{$staff->staff_position_id==$k?'selected':''}}>{{$v}}</option>
                        @endforeach
                    </select>
                </div>
            </div>
            <div class="layui-form-item">
                <label for="department_id" class="layui-form-label">部门</label>
                <div class="layui-input-block">
                    <select name="department_id" lay-search>
                        <option value="" {{$staff->department_id?'':'selected'}}>无</option>
                        @foreach($departments as $k=>$v)
                            <option value="{{$k}}" {{$staff->department_id==$k?'selected':''}}>{{$v}}</option>
                        @endforeach
                    </select>
                </div>
            </div>
            <div class="layui-form-item">
                <label class="layui-form-label">入职日期</label>
                <div class="layui-input-inline">
                    <input type="text" name="date_enroll" id="date_enroll" value="{{$staff->date_enroll}}" autocomplete="off" class="layui-input">
                </div>
            </div>
            <div class="layui-form-item">
                <label for="sex" class="layui-form-label">性别</label>
                <div class="layui-input-block">
                    <input type="radio" name="sex" value="1" title="男" lay-filter="sex_man" {{$staff->sex==1?'checked':''}}>
                    <input type="radio" name="sex" value="2" title="女" lay-filter="sex_female" {{$staff->sex==0?'checked':''}}>
                    <input type="radio" name="sex" value="0" title="待定" {{$staff->sex?'':'checked'}}>
                </div>
            </div>
            <div class="layui-form-item">
                <label for="phone" class="layui-form-label">电话</label>
                <div class="layui-input-block">
                    <input class="layui-input" type="text" name="phone" placeholder="请输入手机号码" lay-verify="phonemsg" value="{{$staff->phone}}">
                </div>
            </div>
            <div class="layui-form-item">
                <label for="status" class="layui-form-label">状态</label>
                <div class="layui-input-block">
                    <input type="radio" name="status" value="0" title="离职" {{$staff->status==0?'checked':''}} lay-filter="staff-status">
                    <input type="radio" name="status" value="1" title="在职" {{$staff->status==1?'checked':''}} lay-filter="staff-status">
                </div>
            </div>
            <div class="layui-form-item hide-leave-date">
                <label class="layui-form-label">离职日期</label>
                <div class="layui-input-inline">
                    <input type="text" name="leave_date" id="leave_date" autocomplete="off" class="layui-input">
                </div>
            </div>
            <div class="layui-form-item">
                <label for="remark" class="layui-form-label">备注</label>
                <div class="layui-input-block">
                    <input type="text" name="remark" placeholder="请输入" autocomplete="off" class="layui-input" value="{{$staff->remark}}">
                </div>
            </div>
            <div class="layui-form-item">
                <label for="L_repass" class="layui-form-label">
                </label>
                <button class="layui-btn" lay-filter="save" lay-submit="">
                    保存
                </button>
            </div>
        </form>
    </div>
</div>
<script>
    function GetAge( obj) {
        let identityCard= $(obj).val();
        console.log(identityCard)
        var len = (identityCard + "").length;
        if (len == 0) {
            return 0;
        } else {
            if ((len != 15) && (len != 18))//身份证号码只能为15位或18位其它不合法
            {
                return 0;
            }
        }
        var strBirthday = "";
        if (len == 18)//处理18位的身份证号码从号码中得到生日和性别代码
        {
            strBirthday = identityCard.substr(6, 4) + "/" + identityCard.substr(10, 2) + "/" + identityCard.substr(12, 2);
        }
        if (len == 15) {
            strBirthday = "19" + identityCard.substr(6, 2) + "/" + identityCard.substr(8, 2) + "/" + identityCard.substr(10, 2);
        }
        //时间字符串里，必须是“/”
        var birthDate = new Date(strBirthday);
        var nowDateTime = new Date();
        var age = nowDateTime.getFullYear() - birthDate.getFullYear();
        //再考虑月、天的因素;.getMonth()获取的是从0开始的，这里进行比较，不需要加1
        if (nowDateTime.getMonth() < birthDate.getMonth() || (nowDateTime.getMonth() == birthDate.getMonth() && nowDateTime.getDate() < birthDate.getDate())) {
            age--;
        }
        console.log(age)
        $('#age').val(age)

    }
    layui.use(['form', 'layer','laydate'],
        function () {
            $ = layui.jquery;
            var form = layui.form,
                layer = layui.layer,
                laydate = layui.laydate;

            laydate.render({
                elem: '#leave_date',
            });

            laydate.render({
                elem: '#date_enroll',
            });
            //自定义验证规则
            form.verify({
                nikename: function (value) {
                    if (value.length < 5) {
                        return '昵称至少得5个字符啊';
                    }
                },
                pass: [/(.+){6,12}$/, '密码必须6到12位'],
                repass: function (value) {
                    if ($('#L_pass').val() != $('#L_repass').val()) {
                        return '两次密码不一致';
                    }
                },
                phonemsg: function(value, item){ //value：表单的值、item：表单的DOM对象
                    if(value!=""){  //值不是空的时候再去走验证
                        if(!/^1(3[0-9]|4[01456879]|5[0-35-9]|6[2567]|7[0-8]|8[0-9]|9[0-35-9])\d{8}$/.test(value)){
                            return '手机号格式不正确';
                        }
                    }
                }
            });


            form.on('radio(staff-status)',function () {
                $('#leave_date').toggle('hide-leave-date')
            })

            //监听提交
            form.on('submit(save)',
                function (data) {
                    $.ajaxSetup(
                    {
                        headers:
                            {
                                'X-CSRF-Token': $('input[name="_token"]').val()
                            }
                    });
                    let url = '/staffs/' + data.field.id;
                    console.log(url);
                    $.ajax({
                        url: url,
                        data: data.field,
                        type: 'PATCH',
                        dataType: "json",
                        statusCode: {
                            401: function() {
                                console.log("statusCode 401 called");
                                window.location.reload();
                            },
                            449: function() {
                                console.log("statusCode 449 called");
                            }
                        },
                        success: function (d) {
                            if(d.error){
                                layer.msg('保存失败:'+d.message, {icon: 2, time: 1000});
                            }else{
                                layer.alert('保存成功',{icon:6,time:5000},function () {
                                    //关闭当前frame
                                    xadmin.close();
                                    // 可以对父窗口数据表进行刷新
                                    parent.layui.table.reload('test');
                                });
                            }
                        },
                        error: function (err) {
                            console.log(err)
                            layer.msg('保存失败', {icon: 2, time: 1000});
                        }
                    });
                    return false;

                });


        });
</script>
</body>

</html>
